import pandas as pd

# 读取表格1
coupon_data = pd.read_excel('核销.xlsx')  # 替换为您的表格1文件路径

# 读取表格2
sales_data = pd.read_excel('抖音.xlsx')  # 替换为您的表格2文件路径

# 读取表格3
exclude_data = pd.read_excel('不参加.xlsx')  # 替换为您的表格3文件路径

# 合并表格2和表格1
merged_data = pd.merge(sales_data, coupon_data, left_on='抖音订单编号', right_on='订单编号', how='left')

# 计算供应商应承担费用
merged_data['供货商应承担费用'] = merged_data['销售金额'] / merged_data.groupby('抖音订单编号')['销售金额'].transform(
    'sum') * merged_data['供货商承担金额']

# # 过滤不参加活动的商品
merged_data = merged_data[~merged_data['商品编码'].isin(exclude_data['商品编码'])]
# 计算门店、今度科技、供应商各自承担的费用
merged_data['金度科技实际承担'] = merged_data['金度科技']
merged_data['供货商实际承担'] = merged_data['供货商应承担费用']
merged_data['门店实际承担'] = merged_data['门店承担金额']

exce2 = merged_data

# # 保留不参加活动的商品
merged_data = merged_data[merged_data['商品编码'].isin(exclude_data['商品编码'])]
# 计算门店、今度科技、供应商各自承担的费用
merged_data['金度科技实际承担'] = 0
merged_data['供货商实际承担'] = 0
merged_data['门店实际承担'] = merged_data['门店承担金额'] + merged_data['金度科技'] + merged_data['供货商应承担费用']

exce1 = merged_data

result = pd.concat([exce1, exce2], axis=0, ignore_index=True)

# # 以订单为单位，计算各方承担的总费用
total_costs = result.groupby('抖音订单编号').agg({
    '金度科技实际承担': 'sum',
    '供货商实际承担': 'sum',
    '门店实际承担': 'sum',
    '商品编码': lambda x: list(x),
    '商品名称_x': lambda x: list(x)
}).reset_index()
# 重命名列，以更好地表示数据
result.rename(columns={
    '金度科技实际承担': '总金度科技承担费用',
    '供应商实际承担': '总供应商承担费用',
    '门店实际承担': '总门店承担费用',
    '商品编号': '商品编号明细',
    '商品名称': '商品名称明细'
}, inplace=True)
# # 保存结果到新的Excel文件
result.to_excel('最终结果.xlsx', index=False)  # 替换为您想要保存的文件路径
#
print("处理完成，最终结果已保存到 '最终结果.xlsx'")
